最近聽到有人在討論「微前端」(Micro Frontends),我的反應是:「蛤?前端還能微嗎?」原來這個「微」是指根據微服務架構的理念,進一步把單體應用程式拆成更小、更獨立的模組,讓不同的團隊可以同時開發、部署和維護各自的部分。
簡單來說,就是把微服務架構的概念挪到前端來使用,因為在這個分工明確的時代系統整合是很困難的,不同團隊可能擅長使用的框架並非相通,因此使用微前端架構就可以將不同架構、框架的前端應用程式結合在一起。
最簡單的方式就是用iframe將多個不同框架的頁面拼裝在一起,再利用瀏覽器的 PostMessage 通訊機制即可做到簡易的跨框架、系統的溝通。聽起來有點蠢,當然還有其他的方法可以處理,讓我們來繼續看下去。
所以,微前端並不是萬能的解決方案,對於小型專案幾乎是「殺雞用牛刀」,大家要根據實際情況選擇適合的架構。(大誤)